package com.itcam.kuangstudy.annotation_;

import java.util.ArrayList;

/**
 * Author:Cammy.Wu
 * Date:2024-05-11
 * Description:
 */

/**
 *  内置注解：
 *      @Override：定义在java.lang.Override中，此注解只适用于修饰方法，表示一个方法重写超类中的另一个方法
 *      @Deprecated：定义在java.lang.Deprecated中，此注解可以用于修饰方法，属性，类。表示不鼓励程序员适用的元素，通常因为危险或者有更好的选择
 *      @SuppressWarnings：定义在java.lang.SuppressWarnings中，用来抑制编译时的警告信息，这个注解需要添加参数(all、unchecked、deprecation)
 */

// 什么是注解？
    /*
        Annotation是从JDK5.0开始的
        Annotation的作用：
            不是程序本身，可以堆程序做出解释。
            可以被其他程序读取
     */
//@SuppressWarnings("all")
public class Test01 extends Object{

    // @Override 重写的注解
    @Override
    public String toString() {
        return super.toString();
    }

    // @Deprecated 这个注解表示，不推荐程序员使用，但是可以使用，或者存在更新的方式
    @Deprecated
    public static void test(){
        System.out.println("Deprecated");
    }

    @SuppressWarnings("all")
    public void test1(){
        ArrayList<Object> arrayList = new ArrayList<>();
    }

    public static void main(String[] args) {
        test();
    }
}
